Computers communicate with other computers and with peripheral devices. FIG. 1 shows a block diagram of a host computer 105 and an end device 110 such as a printer for example. In the example shown, a host application 115 communicates with an end device application 120 over a serial communication link 125. Both the host computer 105 and the end device communicate over the serial communication link 125 using serial ports 128, 132 and serial port drivers 130, 135 to control communications over serial ports 128 and 132.
Sometimes it can be difficult to connect an end device 110 directly to a host computer. This may be because the distance between the end device 110 and the host computer 105 is too great, or because host computer 105 lacks the serial ports needed to connect to the end device 110. In such situations, system designers often turn to a device server. Device servers allow a host computer to communicate with devices. An example is shown in FIG. 2. Typically, the devices are connected by serial communication lines 222 to one or more device servers 220 and an application running on a host computer 212 communicates with the serial devices over the network 210 using the device server 220. More than one host computer 212 can communicate over the network 210 with the same device connected to the device server 220.
To manage the devices, device servers are configured to accommodate the various device types. As the number of different types of devices connected through networks increases, network configurations can quickly become complicated.